-module(test).
-import(cons,[cons/2,atomp/1,car/1,cdr/1,list/1]).
-export([test_cons/0,test_list/0]).

test_cons() -> 
    % consアクタを作る.
    Cons = spawn(fun() -> cons(hello,world) end),
    % Consアクタにメッセージを送って返事をプリントする.
    io:format("~p ~p ~p~n", [atomp(Cons), car(Cons), cdr(Cons)]).

test_list() ->
    % consアクタを連ねてリストを作る.
    List = list([0,1,2]),
    io:format("~p ~p ~n", [        car(List),          cdr(List)]),
    io:format("~p ~p ~n", [    car(cdr(List)),     cdr(cdr(List))]),
    io:format("~p ~p ~n", [car(cdr(cdr(List))),cdr(cdr(cdr(List)))]).

